home *** CD-ROM | disk | FTP | other *** search
/ Assassins - Ultimate CD Games Collection 4 / Assassins 4 (1999)(Weird Science).iso / kids_corner / treasure_search / treasure_search.amos / treasure_search.amosSourceCode < prev   
AMOS Source Code  |  1989-08-12  |  15KB  |  572 lines

  1. ' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  2. '
  3. '                             AMOS Treasure Search 
  4. '
  5. '                                By P.J.Hickman  
  6. '
  7. '                       The First AMOS P.D. Game.........  
  8. '
  9. ' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  10. Default 
  11. Curs Off : Flash Off : Hide On : Screen Close 0
  12. Led Off 
  13. Auto View Off 
  14. Dir$="Treasure_Search:"
  15. INITIALISE
  16. Get Disc Fonts 
  17. Set Font 2
  18. Gr Writing 0
  19. Rem -------------------------------------------------------------------- 
  20. Rem                      GLOBAL VARIABLE DECLARATION 
  21. Rem -------------------------------------------------------------------- 
  22. Repeat 
  23.    TWOPERSONS=0
  24.    HINTS=0
  25.    HARD=0
  26.    THEYDONTWANTANOTHERGO=0
  27.    LIMIT=1000
  28.    DISTANCE=0
  29.    PREV_PIC=0
  30.    GOLDX=0
  31.    GOLDY=0
  32.    XGUESS=0
  33.    YGUESS=0
  34.    SIZE=14
  35.    STGRIDX=168
  36.    STGRIDY=30
  37.    FINISHGRIDX=STGRIDX+(SIZE*9)
  38.    FINISHGRIDY=STGRIDY+(SIZE*9)
  39.    PERSON1$="Shipmate"
  40.    PERSON2$=PERSON1$
  41.    NAME$=PERSON1$
  42.    Rem -------------------------------------------------------------------- 
  43.    Rem                           MAIN PROGRAM 
  44.    Rem -------------------------------------------------------------------- 
  45.    NTRO
  46.    NAMES
  47.    GAME_TYPE
  48.    If Rnd(1)=1 Then PICCYON_UP[2] Else PICCYON_DOWN[2] : Wait Vbl 
  49.    T0_POOL[2]
  50.    PERSON=1
  51.    PICK_TREASURE_LOCATION
  52.    Repeat 
  53.       If PERSON=1 Then NAME$=PERSON1$ Else NAME$=PERSON2$
  54.       GUESS
  55.       CALCULATE_DISTANCE_FROM_TREASURE
  56.       MARK_MOVE
  57.       If(Rnd(1)=0 and DISTANCE>0) or(PREV_PIC=4 and DISTANCE>0)
  58.          GIVE_FUNNY_PICTURE
  59.       Else 
  60.          If DISTANCE>0
  61.             PREV_PIC=4
  62.             Load "Raw_Samples/No_Treasure.Abk"
  63.             Sam Raw 15,Start(6),23458,8000
  64.             Wait 160
  65.             Erase 6
  66.          End If 
  67.       End If 
  68.       If(HINTS and DISTANCE>0) Then GIVE_HELP
  69.       If TWOPERSONS=-1 and PERSON=1 Then PERSON=2 Else PERSON=1
  70.       If HARD=-1 Then LIMIT=LIMIT-1
  71.    Until DISTANCE=0 or LIMIT=0
  72.    If LIMIT>=0 and DISTANCE=0 Then FOUND_TREASURE Else MUTINY
  73.    ANOTHER_GO
  74.    Screen Close 6
  75. Until THEYDONTWANTANOTHERGO=False
  76. End 
  77. Rem -------------------------------------------------------------------
  78. Rem                      INITIAL LOADING SEQUENCE
  79. Rem -------------------------------------------------------------------
  80. Procedure INITIALISE
  81.    Rem ---------- LOAD PICTURE AND DISPLAY IT ----------
  82.    Load Iff "Pictures/MAINSCR2.IFF",1
  83.    If Rnd(1)=1 Then PICCYON_UP[1] Else PICCYON_DOWN[1]
  84.    Rem ---------- LOAD SAMPLES AND OTHER BITS ----------
  85.    Load Iff "Pictures/MAINSCR3.iff",2
  86.    Rem ---------- OPEN "POOL" SCREEN ---------- 
  87.    Screen Open 0,320,200,16,Lowres : Curs Off : Flash Off 
  88.    Rem ---------- COPY SCREEN 2 TO SCREEN 1 AND REUSE SCREEN 2 ---------- 
  89.    Screen Copy 2,0,0,320,200 To 1,0,0
  90.    T0_POOL[1]
  91.    Screen Close 2
  92.    Load Iff "Pictures/Scrolls.iff",2
  93.    Load "Sprites/Feet.abk"
  94.    T0_POOL[1]
  95.    Music Off 
  96. End Proc
  97. Rem -------------------------------------------------------------------  
  98. Procedure NTRO
  99.    Shared TWOPERSONS,PERSON1$,PERSON2$
  100.    T0_POOL[1]
  101.    Pen 15 : Paper 6
  102.    Clear Key 
  103.    Ink 15
  104.    Text 5,68,"How many people"
  105.    Text 6,78,"will help me find"
  106.    Text 5,88,"my lost treasure?"
  107.    Text 24,105,"Press 1 or 2"
  108.    Repeat 
  109.       KEY
  110.       SCAN
  111.       SCANPRESS=Param
  112.    Until SCANPRESS=1 or SCANPRESS=2
  113.    Bell 
  114.    If SCANPRESS=1 Then TWOPERSONS=0 Else TWOPERSONS=-1
  115.    Clear Key 
  116. End Proc
  117. Rem -------------------------------------------------------------------
  118. Procedure WHERE_IS_TREASURE
  119.    Shared NAME$
  120.    CLEAN_TOP_SCROLL
  121.    CLEAN_BOTTOM_SCROLL
  122.    Screen 0
  123.    Pen 1 : Paper 5 : Ink 1
  124.    TEMP=Text Length(NAME$)
  125.    Text(135-TEMP)/2,24,NAME$
  126.    Text 25,42,"Where is"
  127.    Text 35,56,"the lost"
  128.    Text 30,70,"treasure"
  129.    Text 32,84,"hidden?"
  130.    Text 38,126,"I think"
  131.    Text 34,138,"the lost"
  132.    Text 30,150,"treasure"
  133.    Text 26,162,"is hidden"
  134.    Text 34,174,"at"
  135.    Text 55,174,"("
  136.    Text 74,174,","
  137.    Text 90,174,")"
  138.    View 
  139. End Proc
  140. Rem -------------------------------------------------------------------
  141. Procedure ALREADY_SEARCHED
  142.    Shared NAME$
  143.    CLEAN_TOP_SCROLL
  144.    CLEAN_BOTTOM_SCROLL
  145.    Ink 1
  146.    TEMP=Text Length(NAME$)
  147.    Text(135-TEMP)/2,20,NAME$
  148.    Text 24,36,"This place"
  149.    Text 51,50,"has"
  150.    Text 36,64,"already"
  151.    Text 48,78,"been"
  152.    Text 27,92,"searched!!"
  153.    View 
  154.    PRESS_ANY_KEY
  155. End Proc
  156. Rem -------------------------------------------------------------------
  157. Procedure CALCULATE_DISTANCE_FROM_TREASURE
  158.    Shared DISTANCE,GOLDX,GOLDY,XGUESS,YGUESS
  159.    TEMPX=GOLDX-XGUESS
  160.    TEMPY=GOLDY-YGUESS
  161.    If TEMPX<0
  162.       TEMPX=Abs(TEMPX)
  163.    End If 
  164.    If TEMPY<0
  165.       TEMPY=Abs(TEMPY)
  166.    End If 
  167.    If TEMPX>TEMPY Then DISTANCE=TEMPX Else DISTANCE=TEMPY
  168. End Proc
  169. Rem -------------------------------------------------------------------
  170. Procedure MARK_MOVE
  171.    Shared DISTANCE,XGUESS,YGUESS,SIZE,STGRIDX,FINISHGRIDY
  172.    TEMPX=STGRIDX+(SIZE*XGUESS)
  173.    TEMPY=FINISHGRIDY-(SIZE*YGUESS)
  174.    If XGUESS>0 or YGUESS>0
  175.       Load "Raw_Samples/Feet_Sample.Abk",6
  176.    End If 
  177.    If XGUESS>0 Then WALKX[TEMPX,TEMPY]
  178.    If YGUESS>0 Then WALKY[TEMPX,TEMPY]
  179.    Bob Off : Wait Vbl 
  180.    If DISTANCE>4 Then Ink 11 Else If DISTANCE>0 Then Ink 16-DISTANCE Else Ink 15
  181.    Bar TEMPX-3,TEMPY-4 To TEMPX+5,TEMPY+4
  182.    Ink 1
  183.    Box TEMPX-3,TEMPY-4 To TEMPX+5,TEMPY+4
  184.    Erase 6
  185. End Proc
  186. Rem -------------------------------------------------------------------
  187. Procedure GIVE_HELP
  188.    Shared NAME$,DISTANCE
  189.    CLEAN_TOP_SCROLL
  190.    CLEAN_BOTTOM_SCROLL
  191.    Ink 1
  192.    TEMP=Text Length(NAME$)
  193.    Text(135-TEMP)/2,16,NAME$
  194.    Text 34,30,"You are"
  195.    Text 55,42,Str$(DISTANCE)
  196.    If DISTANCE=1
  197.       Text 22,54,"Kilometre"
  198.    Else 
  199.       Text 19,54,"Kilometres"
  200.    End If 
  201.    Text 21,66,"away from"
  202.    Text 53,78,"the"
  203.    Text 32,90,"treasure"
  204.    View 
  205.    PRESS_ANY_KEY
  206. End Proc
  207. Rem -------------------------------------------------------------------
  208. Procedure GIVE_FUNNY_PICTURE
  209.    Shared PREV_PIC
  210.    CLEAN_TOP_SCROLL
  211.    CLEAN_BOTTOM_SCROLL
  212.    Repeat 
  213.       TEMP=Rnd(3)+1
  214.    Until TEMP<>PREV_PIC
  215.    PREV_PIC=TEMP
  216.    TEMP2=Rnd(1)
  217.    If TEMP=1 Then Load Iff "Pictures/LION.IFF",6
  218.    If TEMP=2 Then Load Iff "Pictures/POT.IFF",6
  219.    If TEMP=3 Then Load Iff "Pictures/UNDERWATER.IFF",6
  220.    If TEMP=4 Then Load Iff "Pictures/Cave.Iff",6
  221.    If TEMP2=1
  222.       PICCYON_UP[6]
  223.    Else 
  224.       PICCYON_DOWN[6]
  225.    End If 
  226.    If TEMP=3
  227.       Load "Raw_Samples/Blub.Abk"
  228.    Else 
  229.       Load "Raw_Samples/No_Treasure.Abk"
  230.    End If 
  231.    Flash 9,"(000,40)(CCC,22)"
  232.    View 
  233.    Timer=0
  234.    Repeat 
  235.       If Timer mod 500=0
  236.          If TEMP=3
  237.             Sam Raw 15,Start(6),16600,4000
  238.             Wait 200
  239.          Else 
  240.             Sam Raw 15,Start(6),23458,8000
  241.             Wait 160
  242.          End If 
  243.       End If 
  244.    Until Inkey$<>""
  245.    Flash Off 
  246.    If Rnd(1) Then PICCYON_UP[0] Else PICCYON_DOWN[0]
  247.    Screen Close 6
  248.    Erase 6
  249. End Proc
  250. Rem -------------------------------------------------------------------
  251. Procedure MUTINY
  252.    Load Iff "Pictures/MUTINY.IFF",6
  253.    Load "Raw_Samples/Splash.Abk"
  254.    Load "Raw_Samples/Walk_The_Plank.Abk",7
  255.    If Rnd(1)=1 Then PICCYON_UP[6] Else PICCYON_DOWN[6]
  256.    Sam Raw 15,Start(7),13900,6500
  257.    Wait 130
  258.    Sam Raw 15,Start(6),12000,5500
  259.    Wait 130
  260.    Erase 6 : Erase 7
  261.    Clear Key 
  262. End Proc
  263. Rem -------------------------------------------------------------------
  264. Procedure GUESS
  265.    Shared XGUESS,YGUESS,STGRIDX,SIZE,FINISHGRIDY
  266.    Repeat 
  267.       WHERE_IS_TREASURE
  268.       Auto View On 
  269.       Repeat 
  270.          Pen 9
  271.          Print At(8,21);"_";
  272.          Pen 8
  273.          Repeat 
  274.             Repeat 
  275.                Clear Key 
  276.                KEY
  277.             Until Param$<>" "
  278.             XGUESS=Asc(Param$)-48
  279.          Until XGUESS>=0 and XGUESS<=9
  280.          Pen 1
  281.          Print At(8,21);Right$(Param$,1);
  282.          Bell 
  283.          Pen 9
  284.          Print At(10,21);"_";
  285.          Pen 8
  286.          Repeat 
  287.             Repeat 
  288.                Clear Key 
  289.                KEY
  290.             Until Param$<>" "
  291.             YGUESS=Asc(Param$)-48
  292.             SCAN
  293.             SCANPRESS=Param
  294.          Until(YGUESS>=0 and YGUESS<=9) or SCANPRESS=65
  295.          Pen 1
  296.          If SCANPRESS=65
  297.             Print At(10,21);" ";
  298.          Else 
  299.             Print At(10,21);Right$(Str$(YGUESS),1);
  300.             Pen 8
  301.             Bell 
  302.          End If 
  303.       Until SCANPRESS<>65
  304.       TEMP=Point(STGRIDX+(SIZE*XGUESS),FINISHGRIDY-(SIZE*YGUESS))
  305.       If TEMP>5 Then ALREADY_SEARCHED
  306.    Until TEMP<6
  307.    Auto View Off 
  308. End Proc
  309. Rem -------------------------------------------------------------------
  310. Procedure FOUND_TREASURE
  311.    Shared NAME$
  312.    Load Iff "Pictures/GETGOLD.IFF",6
  313.    Screen 6
  314.    Set Rainbow 1,3,16,"(1,1,15)","(1,1,15)",""
  315.    For Y=250 To 50 Step -5
  316.       Screen Display 6,,Y,,200
  317.       Rainbow 1,0,Y,200
  318.       View : Wait Vbl 
  319.    Next 
  320.    T0_POOL[6]
  321.    Load "Raw_Samples/Well_Done.Abk"
  322.    Load "Raw_Samples/Squark.Abk",7
  323.    Clear Key 
  324.    Pen 15 : Paper 10
  325.    Flash 9,"(000,40)(CCC,22)"
  326.    Ink 15
  327.    TEMP=Text Length(NAME$)
  328.    Text(135-TEMP)/2,54,NAME$
  329.    Text 5,63,"You"
  330.    Text 40,63,"have"
  331.    Text 83,63,"found"
  332.    Text 15,71,"my treasure!"
  333.    View 
  334.    Timer=0
  335.    Repeat 
  336.       If Timer mod 600=0
  337.          Sam Raw 15,Start(6),30266,8000
  338.          Wait 185
  339.          Sam Raw 15,Start(7),9000,6400
  340.          Wait 65
  341.       End If 
  342.    Until Inkey$<>""
  343.    Rainbow Del 1 : View 
  344.    Erase 6
  345.    Erase 7
  346.    Clear Key 
  347.    Flash Off 
  348. End Proc
  349. Rem -------------------------------------------------------------------
  350. Procedure WALKX[TEMPX,TEMPY]
  351.    Shared STGRIDX,FINISHGRIDY
  352.    For LOP=STGRIDX To(TEMPX-14) Step 14
  353.       Bob 2,LOP,FINISHGRIDY-10,3 : Wait Vbl : View 
  354.       Sam Raw 1,Start(6),3900,9000
  355.       Wait 15
  356.       Bob 3,LOP+6,FINISHGRIDY+2,4 : Wait Vbl : View 
  357.       Sam Raw 8,Start(6),3900,9000
  358.       Wait 15
  359.    Next LOP
  360.    Bob Off 1
  361.    Bob Off 2
  362. End Proc
  363. Rem -------------------------------------------------------------------
  364. Procedure WALKY[TEMPX,TEMPY]
  365.    Shared STGRIDX,FINISHGRIDY
  366.    For LOP=FINISHGRIDY To TEMPY Step -14
  367.       Bob 2,TEMPX-11,LOP,1 : Wait Vbl : View 
  368.       Sam Raw 1,Start(6),3900,9000
  369.       Wait 15
  370.       Bob 3,TEMPX+2,LOP-6,2 : Wait Vbl : View 
  371.       Sam Raw 8,Start(6),3900,9000
  372.       Wait 15
  373.    Next LOP
  374.    Bob Off 1
  375.    Bob Off 2
  376. End Proc
  377. Rem -------------------------------------------------------------------
  378. Procedure ANOTHER_GO
  379.    Shared THEYDONTWANTANOTHERGO
  380.    If Rnd(1)=1 Then PICCYON_UP[1] Else PICCYON_DOWN[1]
  381.    T0_POOL[1]
  382.    Pen 15 : Paper 6 : Ink 15
  383.    Text 14,65,"Would you like"
  384.    Text 32,75,"another go?"
  385.    Text 21,98,"Press Y or N"
  386.    View 
  387.    YES_NO
  388.    THEYDONTWANTANOTHERGO=Param
  389. End Proc
  390. Rem -------------------------------------------------------------------
  391. Procedure NAMES
  392.    Shared TWOPERSONS,PERSON1$,PERSON2$
  393.    T0_POOL[1]
  394.    Pen 15 : Paper 6
  395.    If TWOPERSONS=-1
  396.       Locate 1,7
  397.       Text 27,65,"First Player"
  398.       Text 8,75,"Enter your name"
  399.    Else 
  400.       Text 3,65,"Please enter your"
  401.       Text 59,75,"name"
  402.    End If 
  403.    CUSTOM_INPUT[10,4,11,15,15]
  404.    PERSON1$=Param$
  405.    If TWOPERSONS=-1
  406.       Cls 6,3,55 To 156,111
  407.       Text 20,65,"Second Player"
  408.       Text 10,75,"Enter your name"
  409.       CUSTOM_INPUT[10,4,11,15,15]
  410.       PERSON2$=Param$
  411.    End If 
  412. End Proc
  413. Rem -------------------------------------------------------------------
  414. Procedure GAME_TYPE
  415.    Shared HINTS,HARD,LIMIT
  416.    T0_POOL[1]
  417.    Pen 15 : Paper 6
  418.    Cls 6,3,55 To 156,111
  419.    Clear Key 
  420.    Text 14,65,"Would you like"
  421.    Text 31,75,"some hints?"
  422.    Text 21,98,"Press Y or N"
  423.    YES_NO
  424.    Clear Key 
  425.    HINTS=Param
  426.    T0_POOL[1]
  427.    Cls 6,3,55 To 156,111
  428.    Text 14,65,"Would you like"
  429.    Text 20,75,"a hard game?"
  430.    Text 21,98,"Press Y or N"
  431.    YES_NO
  432.    Clear Key 
  433.    HARD=Param
  434.    If HARD=-1
  435.       Randomize Timer
  436.       T0_POOL[1]
  437.       LIMIT=Rnd(8)+4
  438.       Cls 6,3,55 To 156,111
  439.       Text 32,65,"You have "+Right$(Str$(LIMIT),Len(Str$(LIMIT))-1)
  440.       Text 20,75,"moves to find"
  441.       Text 28,85,"my treasure"
  442.       Text 10,105,"Press Any Key"
  443.       View 
  444.       Wait Key 
  445.    End If 
  446. End Proc
  447. Rem -------------------------------------------------------------------
  448. Procedure PRESS_ANY_KEY
  449.    Shared NAME$
  450.    Clear Key 
  451.    CLEAN_BOTTOM_SCROLL
  452.    Ink 7
  453.    Text 23,134,"Press any"
  454.    Text 54,150,"key"
  455.    Text 30,166,"shipmate"
  456.    Ink 1
  457.    View 
  458.    Flash 7,"(000,40)(EC0,22)"
  459.    Wait Key 
  460.    Bell 
  461.    Clear Key 
  462.    CLEAN_BOTTOM_SCROLL
  463.    Flash Off 
  464.    Get Palette 2
  465. End Proc
  466. Rem -------------------------------------------------------------------
  467. Procedure CLEAN_BOTTOM_SCROLL
  468.    Cls 5,20,116 To 114,180
  469. End Proc
  470. Rem -------------------------------------------------------------------
  471. Procedure CLEAN_TOP_SCROLL
  472.    Cls 5,19,9 To 114,94
  473. End Proc
  474. Rem -------------------------------------------------------------------
  475. Procedure PICK_TREASURE_LOCATION
  476.    Shared GOLDX,GOLDY
  477.    Randomize Timer
  478.    GOLDX=Rnd(9)
  479.    GOLDY=Rnd(9)
  480. End Proc
  481. Rem -------------------------------------------------------------------
  482. Procedure YES_NO
  483.    Clear Key 
  484.    Repeat 
  485.       KEY
  486.       SCAN
  487.       SCANPRESS=Param
  488.    Until SCANPRESS=21 or SCANPRESS=54
  489.    Bell 
  490.    If SCANPRESS=21 Then SCANPRESS=-1 Else SCANPRESS=0
  491. End Proc[SCANPRESS]
  492. Rem -------------------------------------------------------------------
  493. Procedure T0_POOL[SCRNUM]
  494.    Screen Hide 0
  495.    Screen Copy SCRNUM,0,0,320,200 To 0,0,0
  496.    Screen 0
  497.    Get Palette SCRNUM
  498.    Screen To Front 0
  499.    Screen Show 0
  500.    Wait Vbl 
  501. End Proc
  502. Rem -------------------------------------------------------------------
  503. Procedure PICCYON_UP[SCR]
  504.    Screen Display SCR,,350,,Screen Height(SCR)
  505.    Screen To Front SCR
  506.    For Y=350 To 50 Step -5
  507.       Screen Display SCR,,Y,,Screen Height(SCR)
  508.       View 
  509.       Wait Vbl 
  510.    Next 
  511.    Screen SCR
  512. End Proc
  513. Rem -------------------------------------------------------------------
  514. Procedure PICCYON_DOWN[SCR]
  515.    Screen Display SCR,,-200,,Screen Height(SCR)
  516.    Screen To Front SCR
  517.    For Y=-200 To 50 Step 5
  518.       Screen Display SCR,,Y,,Screen Height(SCR)
  519.       View 
  520.       Wait Vbl 
  521.    Next 
  522.    Screen SCR
  523. End Proc
  524. Rem -------------------------------------------------------------------
  525. Procedure CUSTOM_INPUT[INPSIZE,X,Y,TCOL,CURSCOL]
  526.    INP$=""
  527.    COUNT=0
  528.    SCANPRESS=0
  529.    X2=X
  530.    Locate X,Y
  531.    Print Space$(INPSIZE+1);
  532.    Clear Key 
  533.    Repeat 
  534.       Locate X2,Y
  535.       Pen CURSCOL : Print "_" : Pen TCOL
  536.       Locate X2,Y
  537.       Repeat 
  538.          KEY
  539.          PRESSKEY$=Param$
  540.          SCAN
  541.          SCANPRESS=Param
  542.       Until(Asc(PRESSKEY$)>=65 and Asc(PRESSKEY$)<=90) or SCANPRESS=65 or SCANPRESS=68
  543.       If SCANPRESS<>65 and COUNT>0 and SCANPRESS<>68 Then PRESSKEY$=Lower$(PRESSKEY$)
  544.       If SCANPRESS<>65 and COUNT<INPSIZE and SCANPRESS<>68 Then Print PRESSKEY$ : INP$=INP$+PRESSKEY$ : COUNT=COUNT+1 : X2=X2+1
  545.       If SCANPRESS=65 and X2>X and SCANPRESS<>68 Then COUNT=COUNT-1 : X2=X2-1 : Locate X2,Y : Print "  "; : INP$=Left$(INP$,COUNT)
  546.    Until SCANPRESS=68 and COUNT>0
  547.    Clear Key 
  548.    Locate X,Y : Print Space$(INPSIZE+1);
  549. End Proc[INP$]
  550. Rem -------------------------------------------------------------------
  551. Procedure KEY
  552.    Repeat 
  553.       PRESSKEY$=Upper$(Inkey$)
  554.    Until PRESSKEY$<>""
  555. End Proc[PRESSKEY$]
  556. Rem -------------------------------------------------------------------
  557. Procedure PAUSE[NUM]
  558.    For LOP=1 To NUM
  559.    Next 
  560. End Proc
  561. Rem -------------------------------------------------------------------
  562. Procedure SCAN
  563.    SCANPRESS=Scancode
  564. End Proc[SCANPRESS]
  565. Rem -------------------------------------------------------------------
  566. Procedure DISKEY
  567.    KEY
  568.    TEST$=Param$
  569.    SCAN
  570.    TEST=Param
  571.    Print Asc(Param$);"  ";TEST
  572. End Proc